package gui

import (
	"fyne.io/fyne/v2"
	"fyne.io/fyne/v2/container"
	"fyne.io/fyne/v2/layout"
	"fyne.io/fyne/v2/widget"
)

// 打开设置界面
func (ui *MainWindow) MakeSetingUI() {

	w := ui.Apps.NewWindow("设置")

	w.SetFixedSize(true) // 设置固定大小，避免用户拖动改变大小

	name := widget.NewLabel("名称:  ")
	nameInput := widget.NewEntry()
	nameInput.SetPlaceHolder("请输入名称")
	//多行输入
	nameInput.MultiLine = true
	nameInput.Wrapping = 2 // 开启自动换行
	// nameInput.SetText(tabInfo.Name)
	nameRow := container.NewBorder(nil, nil, name, nil, nameInput)

	username := widget.NewLabel("电子邮件:")
	usernameText := widget.NewEntry()
	usernameText.SetPlaceHolder("请输入电子邮件")
	//多行输入
	usernameText.MultiLine = true
	usernameText.Wrapping = 2 // 开启自动换行
	// usernameText.SetText(tabInfo.Username)
	usernameRow := container.NewBorder(nil, nil, username, nil, usernameText)

	userConfig := container.New(layout.NewVBoxLayout(), nameRow, usernameRow)
	tabsLayout := container.NewAppTabs(
		container.NewTabItem("用户", container.NewVScroll(userConfig)),
		// container.NewTabItem("提交代码  ", container.NewVScroll(submitBody)),
	)

	w.SetContent(tabsLayout)

	// start 监听主窗口的关闭事件
	// 前提是必须设置主窗口
	w.SetOnClosed(func() {
		w.Close()
	})
	// edn 监听主窗口的关闭事件

	// 设置窗口大小,
	w.Resize(fyne.NewSize(400, 360))
	w.CenterOnScreen()
	w.Show()
	// 确保子窗口显示在主窗口上方
	w.RequestFocus()
}
